package com.sfjswl.fp.core.leaf.roam;

import com.sfjswl.fp.core.context.RulePack;
import com.sfjswl.fp.core.context.RuleRoam;
import com.sfjswl.fp.core.leaf.pack.BaseLeafPackFlow;
import lombok.Data;
import lombok.EqualsAndHashCode;

@Data
@EqualsAndHashCode(callSuper = true)
public abstract class BaseLeafRoamFlow extends BaseLeafPackFlow {

    @Override
    protected boolean doPackFlow(RulePack pack) {
        return doRoamFlow(pack.getRoam());
    }

    protected abstract boolean doRoamFlow(RuleRoam roam);
}
